package com.air.antispider.stream.dataprocess.constants.businessProcess

import org.jboss.netty.handler.ipfilter.IpFilterRuleList

import scala.collection.mutable.ArrayBuffer

/**
  * @Classname FilterURL
  * @Description TODO
  * @Date 2019/7/20 12:44
  * @Created by Administrator
  */
object FilterURL {
  def filterRule(message:String,filterRuleList: ArrayBuffer[String]):Boolean={
    //取出message 中的url
    val arr1: Array[String] = message.split("#CS#")
    if (arr1.length > 1) {
      val arr2: Array[String] = arr1(1).split(" ")
      if (arr2.length > 1){
        val url = arr2(1)
        // 看当前URL是否在过滤列表中
        for (rule <- filterRuleList) {
          if (url.matches(rule)) {
            //如果当前url和过滤规则匹配上,那么当前url就是我想过滤掉的
            return false
          }
        }
        //如果整个for循环都走完了,还么有return,那么肯定是我想要的数据
        return true
      }
    }
    //代表当前数据不完整,比如只有一行
    return false
  }
}